package org.afs.gescol.core.service.interfaces;

import java.util.List;

import org.afs.gescol.core.dto.classes.FullSchoolClassDto;
import org.afs.gescol.core.dto.time.HourlyDto;
import org.afs.gescol.core.dto.time.PeriodDto;
import org.afs.gescol.core.dto.time.SchoolHoursDto;

/**
 * Services for getting the global params.
 * @author Kobla GBENYO (kobla.gbenyo@gmail.com)
 */
public interface GlobalParamsServices {

    /**
     * Get School Class full data.
     * @param cycleId cycle id
     * @return SchoolClass Full Data
     */
    List<FullSchoolClassDto> getSchoolClassFullData(Long cycleId);

    /**
     * Get the school hours params dta.
     * @param cycleId the cycle id
     * @return the hours params data
     */
    SchoolHoursDto getSchoolHoursParams(Long cycleId);

    /**
     * Get school current period.
     * @param cycleId the cycle id
     * @return the period
     */
    PeriodDto getCurrentperiod(Long cycleId);

    /**
     * Get school schedules.
     * @param cycleId the cycle id
     * @return the schedules
     */
    List<HourlyDto> getHourly(Long cycleId);
}
